package control.servlets;

import java.io.IOException;
import java.util.Date;
import java.util.List;

import javax.servlet.ServletException;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

import model.entities.Cliente;
import model.entities.Pedido;
import model.entities.ProdutoPedido;
import model.entities.Usuario;
import model.facade.DeliveryFacade;


public class ConfrimarCompraServlet extends HttpServlet {
	private static final long serialVersionUID = 1L;
       

	
	protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
		String troco = request.getParameter("troco");
		
		List<ProdutoPedido> produtosPedido = (List<ProdutoPedido>) request.getSession().getAttribute(troco);
		
		if(produtosPedido == null || produtosPedido.isEmpty()){
			response.sendRedirect("/delivery/efetuarPedido");
		}
		
		Pedido pedido = new Pedido();
		pedido.setTroco(new Double(troco));
		pedido.setDate(new Date());
		
		Usuario usuario = (Usuario) request.getSession().getAttribute("usuario");
		
		pedido.setCliente((Cliente) usuario);
		pedido.setLista(produtosPedido);
		
		DeliveryFacade.inserirPedido(pedido);
		
		request.getSession().removeAttribute("produtosPedido");
		
		response.sendRedirect("delivery/listarPedidosCliente?pedidoFeito=t");
	
	}
	
	private Double calculaTotal(List<ProdutoPedido> produtoPedido){
		double total = 0;
		for (ProdutoPedido produtopedido: produtoPedido){
			total += produtopedido.getQuantidade() * produtopedido.getProduto().getPreco();
		}
		return total;
	}

}
